//
//  Association.swift
//  Documentation
//
//  Created by Toj on 6/29/23.
//

/** blog
 * 每天写点代码: https://juejin.cn/post/6993233598564286501
 */

/**
 * 从源对象取出关联对象值
 * Parameter @object: 关联的源对象
 * Parameter @key:    关联键
 */
objc_getAssociatedObject(id object, const void *key)

/**
 * 关联对象
 * Parameter @object: 关联的源对象
 * Parameter @key:    关联键
 * Parameter @value:  关联值
 * Parameter @policy: 策略
 */
objc_setAssociatedObject(id object, const void *key, id value, objc_AssociationPolicy policy)

/* 移除 源对象 的 关联
 * Parameter @object: 关联的源对象
 */
objc_removeAssociatedObjects(id object)
